package com.scu.qingshi.facade.domain;


import com.scu.qingshi.common.exception.authorization.AuthorizationException;
import com.scu.qingshi.common.response.BaseResponse;
import com.scu.qingshi.domain.authorize.param.LoginRequest;
import com.scu.qingshi.domain.authorize.param.RegistrationRequest;

/**
 * 网络授权facade
 * @author qingshi
 */
public interface NetworkAuthorizationFacade {
    /**
     * 登陆
     * @param request
     */
    public BaseResponse login(LoginRequest request) throws Exception;

    /**
     * 注册
     * @param request
     */
    public BaseResponse register(RegistrationRequest request) throws Exception;

    public BaseResponse getVerifyCode(String email) throws Exception;

    public BaseResponse getUser(Integer userId);

    public BaseResponse communityLogin(String openId,String password) throws AuthorizationException;
}
